Method and apparatus for requesting and sharing network performance information (NPI)

ABSTRACT

Apparatus and methods that provide wireless communications, where a method for wireless communications includes determining network performance; and sharing NPI with a network node; wherein the NPI comprises information necessary for the network node to determine the performance available on a network.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Patentapplication Ser. No. 61/413,335, entitled “METHOD AND APPARATUS FORREQUESTING AND SHARING NETWORK PERFORMANCE INFORMATION (NPI)” which wasfiled Nov. 12, 2010. This application claims the benefit of U.S.Provisional Patent application Ser. No. 61/450,524, entitled “METHOD ANDAPPARATUS FOR REQUESTING AND SHARING NETWORK PERFORMANCE INFORMATION(NPI)” which was filed Mar. 8, 2011. The entirety of the aforementionedapplications is herein incorporated by reference.

BACKGROUND

Wireless communication systems are widely deployed to provide varioustypes of communication content such as voice, data, and so on. Thesesystems may be multiple-access systems capable of supportingcommunication with multiple users by sharing the available systemresources (e.g., bandwidth and transmit power). Examples of suchmultiple-access systems include code division multiple access (CDMA)systems, time division multiple access (TDMA) systems, frequencydivision multiple access (FDMA) systems, 3GPP Long Term Evolution (LTE)systems, and orthogonal frequency division multiple access (OFDMA)systems.

Generally, a wireless multiple-access communication system cansimultaneously support communication for multiple wireless terminals,also referred to as user equipment (UE) or mobile node (MN). Eachterminal communicates with one or more base stations via transmissionson the forward and reverse links. The forward link (or downlink) refersto the communication link from the base stations to the terminals, andthe reverse link (or uplink) refers to the communication link from theterminals to the base stations. This communication link may beestablished via a single-in-single-out, multiple-in-single-out or amultiple-in-multiple-out (MIMO) system.

To supplement conventional mobile phone network base stations, alsoreferred to as macro network base stations, additional base stations maybe deployed to provide more robust wireless coverage to mobile plannedservice areas. For example, wireless relay stations and small-coveragebase stations (e.g., commonly referred to as access point base stations,picocells, Home NodeBs (HNBs), femto access points, or femto cells) maybe deployed for incremental capacity growth, richer user experience, andin-building coverage. Typically, such small-coverage base stations areconnected to the Internet and the mobile operator's network via a DSLrouter or cable modem. As these other types of base stations may beadded to the conventional mobile phone network (e.g., the backhaul) in adifferent manner than conventional base stations (e.g., macro basestations), there is a need for effective techniques for managing theseother types of base stations and their associated user equipment.

For a multi-radio terminal, it is desirable that IP flows may be mappedto available radio resources. One essential input parameter forattempting to optimize the IP flows is the Network PerformanceInformation (NPI). For example, it would not be desirable to switch to aWireless Local Area Network (WLAN) interface if it is congested and willperform worse than an available cellular interface. Discovering NPI maybe achieved by the terminal sending or receiving traffic over WLANinterface. However, both of these operations consume time, power andnetwork resources. Moreover, the terminal cannot reliably predict theperformance of a scheduled cellular system such as Evolution-DataOptimized or High Speed Packet Access systems, and thus a particulartraffic model A cannot be used to predict performance for a trafficmodel B. Thus, it would be desirable for a terminal to be able to obtainNPI from other nodes directly

SUMMARY

The following presents a simplified summary of one or more aspects of amethod and apparatus for method and apparatus for requesting and sharingnetwork performance information (NPI). This summary is not an extensiveoverview of all contemplated aspects, and is intended to neitheridentify key or critical elements of all aspects nor delineate the scopeof any or all aspects. Its sole purpose is to present some concepts ofone or more aspects in a simplified form as a prelude to the moredetailed description that is presented later.

According to various aspects, the subject innovation relates toapparatus and methods that provide wireless communications, where amethod for wireless communications includes determining networkperformance; and sharing NPI with a network node; wherein the NPIcomprises information necessary for the network node to determine theperformance available on a network.

In another aspect a method for wireless communications includesdetermining a set of parameters that govern network performance; andsharing the set of parameters with a network node; wherein the set ofparameters comprises information necessary for the network node tocompute the performance of its communication over a network

In yet another aspect, an apparatus for wireless communications isprovided that includes means for determining network performance; andmeans for sharing NPI with a network node; wherein the NPI comprisesinformation necessary for the network node to determine the performanceavailable on a network.

In yet another aspect, an apparatus for wireless communications isprovided that includes means for determining a set of parameters thatgovern network performance; and means for sharing the set of parameterswith a network node; wherein the set of parameters comprises informationnecessary for the network node to compute the performance of itscommunication over a network.

In yet another aspect, a computer-program product for wirelesscommunications is provided that includes a machine-readable mediumincluding instructions executable to determine network performance; andshare NPI with a network node; wherein the NPI comprises informationnecessary for the network node to determine the performance available ona network.

In yet another aspect, a computer-program product for wirelesscommunications is provided that includes a machine-readable mediumincluding instructions executable to determine a set of parameters thatgovern network performance; and share the set of parameters with anetwork node; wherein the set of parameters comprises informationnecessary for the network node to compute the performance of itscommunication over a network.

In yet another aspect, an apparatus for wireless communications isprovided that includes an antenna; and a processor coupled to theantenna, the processor configured to determine network performance; andshare NPI with a network node; wherein the NPI comprises informationnecessary for the network node to determine the performance available ona network.

In yet another aspect, an apparatus for wireless communications isprovided that includes an antenna; and a processor coupled to theantenna, the processor configured to determine a set of parameters thatgovern network performance; and share the set of parameters with anetwork node; wherein the set of parameters comprises informationnecessary for the network node to compute the performance of itscommunication over a network.

To the accomplishment of the foregoing and related ends, the one or moreaspects comprise the features hereinafter fully described andparticularly pointed out in the claims. The following description andthe annexed drawings set forth in detail certain illustrative aspects ofthe one or more aspects. These aspects are indicative, however, of but afew of the various ways in which the principles of various aspects maybe employed and the described aspects are intended to include all suchaspects and their equivalents.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosed aspects will hereinafter be described in conjunction withthe appended drawings, provided to illustrate and not to limit thedisclosed aspects, wherein like designations denote like elements, andin which:

FIG. 1 is a schematic diagram of an aspect of a network environment inwhich an aspect for Network Performance Information (NPI)request/sharing may be implemented;

FIG. 2 is a schematic diagram of an aspect of an access point node ofFIG. 1;

FIG. 3 is a schematic diagram of an aspect of a terminal node of FIG. 1;

FIG. 4 is a message diagram showing an NPI request/response process;

FIG. 5 is a flow diagram of an NPI broadcasting process;

FIG. 6 is a diagram of an information element utilized in the NPIbroadcasting process of FIG. 5;

FIG. 7 is a flow diagram of a peer-to-peer NPI sharing process; and

FIG. 8 is a block diagram of an apparatus that includes a processingsystem.

DETAILED DESCRIPTION

Various aspects are now described with reference to the drawings. In thefollowing description, for purposes of explanation, numerous specificdetails are set forth in order to provide a thorough understanding ofone or more aspects. It is understood, however, that such aspect(s) maybe practiced without these specific details.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments. The techniques described herein maybe used for various wireless communication networks such as CodeDivision Multiple Access (CDMA) networks, Time Division Multiple Access(TDMA) networks, Frequency Division Multiple Access (FDMA) networks,Orthogonal FDMA (OFDMA) networks, Single-Carrier FDMA (SC-FDMA)networks, etc. The terms “networks” and “systems” are often usedinterchangeably. A CDMA network may implement a radio technology such asUniversal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA includesWideband-CDMA (W-CDMA) and Low Chip Rate (LCR). cdma2000 covers IS-2000,IS-95 and IS-856 standards. A TDMA network may implement a radiotechnology such as Global System for Mobile Communications (GSM). AnOFDMA network may implement a radio technology such as Evolved UTRA(E-UTRA), IEEE 802.11, IEEE 802.16, IEEE 802.20, Flash-OFDM®, etc. UTRA,E-UTRA, and GSM are part of Universal Mobile Telecommunication System(UMTS). Long Term Evolution (LTE) is an upcoming release of UMTS thatuses E-UTRA. UTRA, E-UTRA, GSM, UMTS and LTE are described in documentsfrom an organization named “3rd Generation Partnership Project” (3GPP).cdma2000 is described in documents from an organization named “3rdGeneration Partnership Project 2” (3GPP2). These various radiotechnologies and standards are known in the art.

In some aspects the teachings herein may be employed in a network thatincludes macro scale coverage (e.g., a large area cellular network suchas a 3G networks, typically referred to as a macro cell network) andsmaller scale coverage (e.g., a residence-based or building-basednetwork environment). As a mobile node, also referred to as an accessterminal (“AT”), moves through such a network, it may be served incertain locations by access nodes (“ANs”, also referred tointerchangeably as Node Bs or base stations) that provide macro coveragewhile the access terminal may be served at other locations by accessnodes that provide smaller scale coverage. In some aspects, the smallerscale coverage nodes may be used to provide incremental capacity growth,in-building coverage, and different services (e.g., for a more robustuser experience). In the discussion herein, a node that providescoverage over a relatively large area may be referred to as a macronode, or Node B. A node that provides coverage over a relatively smallarea (e.g., a residence) may be referred to as a femto node, or homenode B. A cell associated with a macro node or a femto node may bereferred to as a macro cell or a femto cell (or “femtocell”),respectively. In some implementations, each cell may be furtherassociated with (e.g., divided into) one or more sectors.

In various applications, other terminology may be used to reference amacro node or a femto node. For example, a macro node may be configuredor referred to as an access node, base station, access point, Node B,evolved Node B (eNode B), macro cell, and so on. Also, a femto node maybe configured or referred to as a Home Node B, Home eNode B, accesspoint base station, femtocell, femto access point, and so on.

One aspect of the disclosed methods is related to sharing NetworkPerformance Information (NPI) to facilitate radio interface selectionfor a multi-radio terminal. Another aspect is related to NPI requests tofacilitate radio interface selection for a multi-radio terminal. Yetanother aspect is related to a generic request/response messagearchitecture allowing a terminal to discover what network performance itwould experience if a given IP flow was added to its flows, such asavailable bit rate headroom or maximum latency at a given throughput.The response is prepared by a radio access node and takes schedulingconsiderations into account.

As further described herein, NPI may encompass information about one ormore of the following parameters, including:

-   -   backhaul or Radio Access Network (RAN);    -   uplink or downlink; and/or    -   latency, bitrate or packet loss rate.

For example, a particular NPI may include information about the RAN,downlink, and bitrate. In general, the NPI may be estimated by an accessterminal or by an access node. The NPI may be used by a multi-radiodevice to efficiently utilize a suitable set of its radio interfaces.

FIG. 1 illustrates, in one exemplary aspect that should not be construedas limiting, a communication system in which NPI request and sharingapproaches may be taken, where one or more nodes are deployed within anetwork environment 110. Specifically, the network 110 includes multiplenetwork nodes, such as WLAN nodes 112 and femto nodes or HNB 114,installed in a relatively small scale network environment 116, such asin one or more user residences. Each node 112 and 114 may be coupled,such as via one or more of a DSL router, a cable modem, a wireless link,or other connectivity mechanism, to a wide area network 118 (e.g., theInternet), which in turn is communicatively linked to a mobile operatorcore network 120, and a macro cell access node 122. As will be discussedbelow, each node 112 and 114 may be configured to serve one or moreaccess terminals, such as associated or member access terminal 124, and,optionally, alien or non-member access terminal 126. In other words,access to nodes 112 and 114 may be restricted whereby a given accessterminal 124 or 126 may be served by a one or more designated (e.g.,home) node(s) but may not be served by any non-designated nodes (e.g., aneighbor's node).

Referring to FIG. 2, in one aspect, a femto or WLAN node may beimplemented as an access point node 12, that may include a processor 50for carrying out processing associated with one or more of components orfunctions described herein. Processor 50 may include a single ormultiple sets of processors or multi-core processors. Moreover,processor 50 can be implemented as an integrated processing systemand/or a distributed processing system.

Access point node 12 may further include a memory 52, such as forstoring local versions of applications being executed by processor 50.Memory 52 can include any type of memory usable by a computer, such asrandom access memory (RAM), read only memory (ROM), tapes, magneticdiscs, optical discs, volatile memory, non-volatile memory, and anycombination thereof.

Further, access point node 12 may include a communications component 54that provides for establishing and maintaining communications with oneor more other components of system 10 (FIG. 1), for example, utilizinghardware, software, and services as described herein. Communicationscomponent 54 may carry communications between components on access pointnode 12, as well as between access point node 12 and external devices,such as devices located across a communications network and/or devicesserially or locally connected to access point node 12. For example,communications component 54 may include one or more buses, and mayfurther include transmit chain components and receive chain components,respectively including one or more transmitters and receivers, ortransceivers, operable for interfacing with external devices.

Additionally, access point node 12 may further include a data store 56,which can be any suitable combination of hardware and/or software, thatprovides for mass storage of information, databases, and programsemployed in connection with aspects described herein. For example, datastore 56 may be a data repository for applications not currently beingexecuted by processor 50.

Access point node 12 may additionally include a user interface component58 operable to receive inputs from a user of access point node 12, andfurther operable to generate outputs for presentation to the user. Userinterface component 58 may include one or more input devices, includingbut not limited to a keyboard, a number pad, a mouse, a touch-sensitivedisplay, a navigation key, a function key, a microphone, a voicerecognition component, any other mechanism capable of receiving an inputfrom a user, or any combination thereof. Further, user interfacecomponent 58 may include one or more output devices, including but notlimited to a display, a speaker, a haptic feedback mechanism, a printer,any other mechanism capable of presenting an output to a user, or anycombination thereof.

Access point node 12 further includes an NPI module 60, which will befurther described herein. In general, the NPI module 60 is used by theaccess point node 12 to obtain and store NPI, as well as share NPI toany nodes that request the information.

Referring to FIG. 3, in one aspect, an access terminal may beimplemented as an access terminal node 16, which may include a processor51 for carrying out processing associated with one or more of componentsor functions described herein. Processor 51 may include a single ormultiple sets of processors or multi-core processors. Moreover,processor 51 can be implemented as an integrated processing systemand/or a distributed processing system.

Access terminal node 16 may further include a memory 53, such as forstoring local versions of applications being executed by processor 51.Memory 53 can include any type of memory usable by a computer, such asrandom access memory (RAM), read only memory (ROM), tapes, magneticdiscs, optical discs, volatile memory, non-volatile memory, and anycombination thereof.

Further, access terminal node 16 may include a communications component55 that provides for establishing and maintaining communications withone or more other components of system 10, for example, utilizinghardware, software, and services as described herein. Communicationscomponent 55 may carry communications between components on accessterminal node 16, as well as between access terminal node 16 andexternal devices, such as devices located across a communicationsnetwork and/or devices serially or locally connected to access terminalnode 16. For example, communications component 55 may include one ormore buses, and may further include transmit chain components andreceive chain components, respectively including one or moretransmitters and receivers, or transceivers, operable for interfacingwith external devices.

Additionally, access terminal node 16 may further include a data store57, which can be any suitable combination of hardware and/or software,that provides for mass storage of information, databases, and programsemployed in connection with aspects described herein. For example, datastore 57 may be a data repository for applications not currently beingexecuted by processor 51.

Access terminal node 16 may additionally include a user interfacecomponent 59 operable to receive inputs from a user of access terminalnode 16, and further operable to generate outputs for presentation tothe user. User interface component 59 may include one or more inputdevices, including but not limited to a keyboard, a number pad, a mouse,a touch-sensitive display, a navigation key, a function key, amicrophone, a voice recognition component, any other mechanism capableof receiving an input from a user, or any combination thereof. Further,user interface component 59 may include one or more output devices,including but not limited to a display, a speaker, a haptic feedbackmechanism, a printer, any other mechanism capable of presenting anoutput to a user, or any combination thereof.

One subject of this disclosure is a method to request/indicate NPI incase a specified flow is added to the connection of a given terminal.For example, if a terminal has 0, 1, . . . , n flows ongoing, andrequests NPI in case an additional flow n+1 was added, a Node B orcentral controller in the RAN may predict the NPI and respond to theterminal. Further, the terminal may already associated with the AP, butmay have no ongoing flows.

In order to perform smart interface selection, there is a need for theterminal to know how a particular radio interface would react withadditional flows. For example, it would be useful for the terminal toknow:

-   -   how much more traffic it could fit (i.e., leftover bitrate);    -   how delay would be affected;    -   if packet loss would occur; or    -   other information specific to each terminal

In general, a terminal cannot estimate reliably how it would be servedif more IP flows were added to this radio interface. For example, theterminal cannot estimate maximum DL/UL bitrate based on observationsmade while DL/UL queues are not full. Thus, for example, the terminalwould not be able to guess the rate of a FTP session based on a chatsession.

There may be many reasons why the terminal cannot reliably estimate whatwould happen if more IP flows were added, including:

-   -   the behavior of the scheduler is unknown (the scheduler may        handle terminals differently based on profiles, consumed data        volume, roaming, etc.);    -   the terminal may not be able to observe how other stations are        scheduled;    -   the terminal does not know if other stations have full DL/UL        queues;    -   the terminal may not know how many other stations are being        served; and    -   the terminal may not be able to reliably detect the spectrum        utilization.

Because each terminal may experience a different network performance, ina scheduled system the entity scheduling jointly with core networkelements can predict the maximum network performance available for aterminal. In one approach, a message for the terminal to inquire aboutmaximum network performance for itself is considered. Alternatively, amessage may be used to inquire about network performance in case a newflow is added. The network will respond to the message with maximumnetwork performance for this particular terminal in these radioconditions. The parameters can include any of the NPI described herein.

FIG. 4 illustrates an NPI request and response messaging sequence 400,where at 402 a terminal sends an NPI request to a RAN element. Based onthis request from the terminal, at 404 the radio access network elementwill also send an NPI request to a core network element at 406. The corenetwork element at 406 includes subscriber information, which mayinclude information that apply to the terminal, including security andother policies; subscription information; usage/quota information; andother information. The radio access network element includes performanceinformation that applies to the terminal, which includes radio resourceperformance; load, and other information. The information that isreceived from the core network element at 408 is combined with theinformation on the radio access network element to create an NPIresponse to the terminal at 410.

In one aspect of the disclosure, one node may be used to estimate NPIand a communication protocol is used to exchange that information withother nodes. Accurate NPI estimation may consume network resources orpower. With the approaches described herein, accurate estimation may beperformed only by selected nodes in the network. Other nodes use the NPIupon either being already connected to that network and starting a newIP flow, or while evaluating the benefit of starting to use thisnetwork/radio interface when the terminal is already using one or moreother network/radio interfaces.

In one approach, the access network equipment performs NPI estimates.The equipment may be: a WLAN access point, a femto box, an eNB, etc. Theaccess point may periodically broadcast relevant NPI estimate. Inanother aspect, the access point may transmit the relevant NPI estimatedirectly to a node. The access point may transmit or broadcast theinformation in response to access probes. In WLANs, an active scan ismore power efficient than a passive scan. Thus, a node in the networkestimates network performance, and communication protocols enablesharing this information. Both stations that are already connected to,as well as stations not yet connected (i.e., associated) with thenetwork may receive this information.

The following information may be especially relevant for the accesspoint in a WLAN to broadcast:

-   -   current load on the backhaul (e.g., Digital Subscriber Line        (DSL)/cable link), for uplink and downlink (unit: bit/s);    -   total capacity of the backhaul, for uplink and downlink (unit:        bit/s); and    -   leftover capacity on the backhaul, for uplink and downlink        (unit: bit/s).

The determined network performance also needs to account fornon-wireless technology such as DSL, cable, and other modems, and is notlimited to wireless protocols. For example, the approach is used betweenthe cable modem and access point to inform the access point of the cablemodem's link capacity, in situations where the access point and thecable modem are two different devices. The availability of backhaulinformation is important for application such as cellular offloadbecause the information provides better support for proper interfaceselection. Significant efforts in 3GPP and 3GPP2 are being made tosupport mobility of IP flows between cellular and WLAN networks. IEEE802.11 access points promise network throughput on the order of hundredsof megabit-per-second, but may be backhaul limited. For example, abackhaul rate for a home access point may only be 10 megabits-per-second(Mbps) and advanced cellular connection promise greater than 10 Mbps.Further, these backhauls may be shared by multiple devices. Existingnetwork load indicators do not account for this backhaul limitation.Thus, based on existing load indicators, interface selection may resultin lower throughput because the selection is based on incompleteinformation.

For example, continuing with the previous case where the backhaul isonly 10 Mbps, but further assume that a terminal estimates that there isa 250 Mbps air link capacity in the WLAN. If the estimated cellularcapacity is 20 Mbps, the terminal will select the use of the WLANinterface because the terminal will select the higher link capacity.However, the actual capacity experienced by the terminal is limited toless than 10 Mbps due to backhaul bandwidth limitation. Thus, terminalsneed to account for medium and backhaul load for interface selection,and the broadcasting of the backhaul load information assists in thisendeavor.

FIG. 5 illustrates a backhaul information broadcast process 500configured in accordance with one aspect of the NPI sharing approach,where at 502, an access point determines backhaul information such asbackhaul capacity described above. At 504, the access point will placethe backhaul information in an information element. At 506, theinformation element may be included in any one of these existing frames:

-   -   a beacon frame such as that defined by IEEE 802.11 frame format        8.3.3.2;    -   a probe response such as that defined by IEEE 802.11 frame        format 8.3.3.10; or    -   an action frame such as that defined by IEEE 802.11 frame format        8.3.3.13-8.3.3.14.

In another aspect of the information element construction, a new frameformat may also be used. At 508, the access point will broadcast theinformation element.

FIG. 6 is a diagram of an information element frame 600 that may be usedin the NPI broadcast process 500. In one aspect of the NPI broadcastprocess, the information element 600 comprises an element ID field 602,a length field 604, a Multi-User MIMO (MU-MIMO) station count field 606,a spatial streams under utilization field 608, a busy bandwidth utilityfield 610, a backhaul downlink capacity field 612, and a backhaul uplinkcapacity field 614. The element ID field 602 uniquely identifies theinformation element frame 600. The length field 604 indicates the lengthof the information element frame 600. The MU-MIMO station count field606 indicates the number of associated MIMO stations. The spatialstreams under utilization field 608 indicates the number of spatialstreams that is being utilized. The busy bandwidth utility field 610indicates the portion of the transmission rate used in the transport ofthe total traffic load. The backhaul downlink capacity field 612provides information to the terminals about the downlink capacity of theWLAN, and a backhaul uplink capacity field 614 provides information tothe terminals about the uplink capacity of the WLAN. Each of the fieldsis of a certain size, as indicated by the number below each field title.

Regarding UMTS, the following may be especially relevant for the NB tobroadcast:

-   -   noise figure at the NB (N_(—)0);    -   maximum RoT at the NB;    -   average code utilization on the downlink (e.g., HS-PDSCH), which        is how much headroom is left;    -   number of downlink (e.g., HSDPA) and uplink (e.g., HSUPA)        carriers; and    -   maximum data rate (MCS) supported on each carrier, for both        downlink and uplink.

In one aspect of the disclosed approaches, for downlink rate estimationfor UMTS, a database tracks and stores MPO, CQI table, and effectivenumber of UEs. The first two quantities are available in Cell_DCH state,and the last one is estimated in Cell_DCH state. In one approach fordownlink rate estimation for UMTS, a UE measures CPICH channel andcalculates CQI. This may be based on MPO. The CQI is mapped to maximumthroughput, which in one approach is based on CQI tables. For example,channel quality information is used to map to a data rate. Lastly,available throughput is given by maximum throughput/effective number ofUEs.

In one approach for uplink rate estimation for UMTS, a UE estimates itslocal No_(UE), from which UE infers Node B No_(NodeB). The estimate maybe a few dB off. The UE assumes a certain rise over thermal target(RoT_(target)) of Node B. This parameter depends on Node Bimplementation and may be different from vendor to vendor. The proceduremay involve the UE reading Io from SIB. The UE calculates usedROT_(used)=Io/NO_(NodeB), where No_(NodeB) is the noise at Node B. TheUE calculates availabe RoT_(avail)=ROT_(target)−ROT_(used), whereRoT_(target) is a metric for UE to calculate for its own NPI. UEcalculates power-headroom is limited RoT_(powerlimited)=P_(max)−PL−No(all calculation may be performed in dB), where P_(max) is maximumtransmit power, PL is the path loss and No is the noise figure of theterminal. Finally, in one aspect of the disclosure,Rate=3.84*log₂(1+min(RoT_(avail), RoT_(powerlimited))) Mbps. Theinformation that is sent is not the actual bitrate estimate, butinformation that allows the UE to calculate bitrate estimates.

In another approach, a peer-to-peer protocol is defined for sharing NPIamong members of a network. In this scenario, the terminal is alreadyconnected to that network. However, instead of actively probing for NPI,which will cause additional send/receive traffic, the terminal obtainsNPI estimates from its peers. FIG. 7 illustrates a peer-to-peer NPIsharing process. In step 702, a specific local multicast address may beallocated for such purpose. For example, a link local multicast addressmay be dedicated to NPI sharing. In step 704, a terminal sends an “NPIinformation request” to the multicast address. Then, in step 706,another terminal responds and includes its most up-to-date NPI estimate.

Requesting NPI directly from another terminal may be more powerefficient than when the terminal performs estimation by itself. SharingNPI also reduces load that is due to having each terminal performing itsown estimation. Performance information becomes available without“probing”. Having NPI may allow the terminal to accelerate/optimizeselection of a radio network interface because NPI is available sooner.Obtaining NPI from another source may also provide the terminal withmore information than it could obtain by itself. For example, the WLANAP can measure the backhaul Round Trip Time (RTT), while the station canonly measure the combined backhaul and WLAN RTT.

In general, a terminal cannot predict network performance for ascheduled network for the addition of a flow A based on observing thenetwork before that flow is served. Indeed, in most scheduled systems,such as cellular systems, the scheduler is left to network vendorimplementation. Moreover, the terminal may be subject to policies ofwhich it is unaware, including core network rate limitations. Hence, adedicated signaling is proposed herein that allows the terminal to askthe scheduler specifically what network performance would be experiencedby the terminal if a given flow is added. The terminal may also requestinformation about available bitrate headroom. The terminal may furtherdetermine maximum latency at a given throughput. The disclosed methodsallow terminals to reliably discover if a new flow would be servedproperly on a particular radio interface. Further, the disclosed methodsallow terminals to discover the above without sending “sample data” or“probes” over that radio interface, which waste time, power, and networkresources.

The disclosed embodiments also describe methods for a terminal to detectWLAN NPI. In one aspect of the disclosure, a first set of methods isused when no WLAN traffic is currently being transported by theterminal. A second set of methods is designed for use when there isongoing WLAN traffic. In general, all the operations/notation isapplicable to both uplink and downlink operations. Downlink operationsare used in the examples, but they are equally applicable to uplinkoperations, with the appropriate change of variables.

When there is no traffic being transported by the terminal on WLAN, butthere is some trigger that has lead the terminal to search for a WLANand at least one WLAN has been found, assuming at least one other datanetwork is available, the terminal must select one among these networksto start that first flow. While a search may have happened previously,in one aspect of the disclosed approach it is assumed that the selectionoccurs after the socket on the terminal issues a call to send a firstpacket. Thus, the duration available to perform evaluation of WLANperformance is short and may be on the order of a single second. Inanother approach, the quality of a found WLAN is monitored periodically,until a request to associate arrives at a later point. The periodicmonitoring shall consume a minimum amount of power. The goal is todeliver an estimate throughput available on downlink and uplink. Thethroughput available depends on which link is, or will be, thebottleneck, hence the first step is to locate the potential bottleneck.

In order to determine if the backhaul is the bottleneck, the terminalmay need information on the network topology. The following cases arepossible:

1) only WLAN stations are attached to the backhaul (e.g., enterprise orpure WLAN hotspot environments);

2) WLAN and LAN stations are attached to the backhaul (e.g., homeenvironments); or

3) WLAN, LAN and a femto are attached to the backhaul.

With regard to case 1, the terminal can determine backhaul load by onlyobserving and classifying WLAN traffic into Internet and local traffic.Here the terminal may sense the traffic over the WLAN to discover theInternet/local composition. In case 2, the terminal needs to know atleast how much traffic is destined for the LAN. For case 3, the terminalneeds to know at least how much traffic is going to the LAN and thefemto.

FIG. 8 illustrates an example of a hardware configuration for aprocessing system 800 in a wireless node. In this example, theprocessing system 800 may be implemented with a bus architecturerepresented generally by bus 802. The bus 802 may include any number ofinterconnecting buses and bridges depending on the specific applicationof the processing system 800 and the overall design constraints. The buslinks together various circuits including a processor 804,computer-readable media 806, and a bus interface 808. The bus interface808 may be used to connect a network adapter 810, among other things, tothe processing system 800 via the bus 802. The network interface 810 maybe used to implement the signal processing functions of the PHY layer. Auser interface 812 (e.g., keypad, display, mouse, joystick, etc.) mayalso be connected to the bus via the bus interface 808. The bus 802 mayalso link various other circuits such as timing sources, peripherals,voltage regulators, power management circuits, and the like, which arewell known in the art, and therefore, will not be described any further.

The processor 804 is responsible for managing the bus and generalprocessing, including the execution of software stored on thecomputer-readable media 808. The processor 808 may be implemented withone or more general-purpose and/or special-purpose processors. Examplesinclude microprocessors, microcontrollers, digital signal processors(DSPs), field programmable gate arrays (FPGAs), programmable logicdevices (PLDs), state machines, gated logic, discrete hardware circuits,and other suitable hardware configured to perform the variousfunctionality described throughout this disclosure.

One or more processors in the processing system may execute software.Software shall be construed broadly to mean instructions, instructionsets, code, code segments, program code, programs, subprograms, softwaremodules, applications, software applications, software packages,routines, subroutines, objects, executables, threads of execution,procedures, functions, etc., whether referred to as software, firmware,middleware, microcode, hardware description language, or otherwise.

In the hardware implementation illustrated in FIG. 8, thecomputer-readable media 806 is shown as part of the processing system800 separate from the processor 804. However, as those skilled in theart will readily appreciate, the computer-readable media 806, or anyportion thereof, may be external to the processing system 800. By way ofexample, the computer-readable media 806 may include a transmissionline, a carrier wave modulated by data, and/or a computer productseparate from the wireless node, all which may be accessed by theprocessor 804 through the bus interface 808. Alternatively, or inaddition to, the computer readable media 804, or any portion thereof,may be integrated into the processor 804, such as the case may be withcache and/or general register files.

It is understood that the specific order or hierarchy of steps in theprocesses disclosed is an example of exemplary approaches. Based upondesign preferences, it is understood that the specific order orhierarchy of steps in the processes may be rearranged while remainingwithin the scope of the present disclosure. The accompanying methodclaims present elements of the various steps in a sample order, and arenot meant to be limited to the specific order or hierarchy presented.

Those of skill in the art would understand that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Those of skill would further appreciate that the various illustrativelogical blocks, modules, circuits, and algorithm steps described inconnection with the embodiments disclosed herein may be implemented aselectronic hardware, computer software, or combinations of both. Toclearly illustrate this interchangeability of hardware and software,various illustrative components, blocks, modules, circuits, and stepshave been described above generally in terms of their functionality.Whether such functionality is implemented as hardware or softwaredepends upon the particular application and design constraints imposedon the overall system. Skilled artisans may implement the describedfunctionality in varying ways for each particular application, but suchimplementation decisions should not be interpreted as causing adeparture from the scope of the present disclosure.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general purpose processor, a digital signalprocessor (DSP), an application specific integrated circuit (ASIC), afield programmable gate array (FPGA) or other programmable logic device,discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general purpose processor may be a microprocessor, but in thealternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

In one or more exemplary embodiments, the functions described may beimplemented in hardware, software, firmware, or any combination thereof.If implemented in software, the functions may be stored on ortransmitted over as one or more instructions or code on acomputer-readable medium. Computer-readable media includes both computerstorage media and communication media including any medium thatfacilitates transfer of a computer program from one place to another. Astorage media may be any available media that can be accessed by acomputer. By way of example, and not limitation, such computer-readablemedia can comprise RAM, ROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage or other magnetic storage devices, or anyother medium that can be used to carry or store desired program code inthe form of instructions or data structures and that can be accessed bya computer. Also, any connection is properly termed a computer-readablemedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition of medium.Disk and disc, as used herein, includes compact disc (CD), laser disc,optical disc, digital versatile disc (DVD), floppy disk and blu-ray discwhere disks usually reproduce data magnetically, while discs reproducedata optically with lasers. Thus, in some aspects computer readablemedium may comprise non-transitory computer readable medium (e.g.,tangible media). In addition, in some aspects computer readable mediummay comprise transitory computer readable medium (e.g., a signal).Combinations of the above should also be included within the scope ofcomputer-readable media.

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentdisclosure. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the disclosure. Thus, the present disclosure is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

What is claimed is:
 1. A method for wireless communications, comprising:receiving a request, from a user terminal, to predict networkperformance information (NPI) based at least in part on adding at leastone data flow in a connection between the user terminal and at least oneof multiple networks over an access point; receiving performanceinformation related to a backhaul of the access point; predicting, inresponse to the request and based at least in part on the performanceinformation, the NPI of the at least one of the multiple networks basedat least in part on one or more ongoing data flows existing for theconnection between the user terminal and the at least one of themultiple networks over the access point and in response to the at leastone data flow added to the connection between the at least one of themultiple networks and the user terminal over the access point; andsharing the NPI with one or more network nodes, wherein the NPIcomprises information for the user terminal to determine a performanceof communications associated with the user terminal and the at least oneof the multiple networks over the one or more ongoing data flows and theat least one data flow, wherein the sharing is performed in response toaddition of the at least one data flow to the connection.
 2. The methodof claim 1, wherein the NPI comprises at least one of latencyinformation, bitrate information, current load information, totalcapacity information, leftover capacity information, or packet loss rateinformation for a communications resource on at least one of themultiple networks.
 3. The method of claim 2, wherein the communicationsresource comprises at least one of a backhaul or radio access network.4. The method of claim 1, wherein the predicting is based on informationreceived from a user terminal.
 5. The method of claim 1, wherein thepredicting is further based at least in part on subscriber informationof the user terminal.
 6. The method of claim 1, wherein the sharing ofthe NPI comprises broadcasting the NPI to an access point.
 7. The methodof claim 6, wherein the access point covers the user terminal.
 8. Themethod of claim 6, wherein the broadcasting occurs in pre-determinedtime intervals.
 9. The method of claim 1, wherein the sharing of the NPIcomprises forwarding the NPI to the user terminal.
 10. The method ofclaim 1, wherein the sharing of the NPI comprises sharing the NPIbetween at least two user terminals.
 11. The method of claim 1, whereinsharing of the NPI comprises: receiving a request from the user terminalfor the NPI; and transmitting the NPI in response from the request. 12.The method of claim 1, wherein sharing the NPI comprises: creating aninformation element based on the NPI; inserting the information elementinto a frame; and transmitting the frame.
 13. A method for wirelesscommunications, comprising: receiving a request, from a user terminal,to predict network performance based at least in part on adding at leastone data flow in a connection between the user terminal and at least oneof multiple networks over an access point; receiving performanceinformation related to a backhaul of the access point; predicting, inresponse to the request and based at least in part on the performanceinformation, a set of parameters that govern the network performancebetween multiple networks based at least in part on one or more ongoingdata flows existing for the connection between the user terminal and theat least one of the multiple networks over the access point and inresponse to the at least one data flow added to the connection betweenthe at least one of the multiple networks and the user terminal over theaccess point; and sharing the set of parameters with a network node inresponse to addition of the at least one data flow to the connection,wherein the set of parameters comprises information for the network nodeto determine a performance of communications associated with the networknode over each network of the multiple networks.
 14. The method of claim13, wherein the network node comprises a user terminal.
 15. The methodof claim 13, wherein the set of parameters comprises one of: a noisefigure at a Node B; a target Rise over Thermal at the Node B; averageuse of OVSF codes on a high speed downlink packet access channel; anindicator of whether 64 QAM modulation is supported at the Node B; anindicator of whether MIMO is supported at the Node B; an indicator ofwhether Multi-Carrier is supported at the Node B; a maximum transportblock size supported by the Node B for uplink and downlink; an averagetime/frequency resource utilization for an extended Node B; or a maximumnumber of bits configured to transmit/receive in a time transmitinterval for the extended Node B.
 16. An apparatus for wirelesscommunications, comprising: means for receiving a request, from a userterminal, to predict network performance information (NPI) based atleast in part on adding at least one data flow in a connection betweenthe user terminal and at least one of multiple networks over an accesspoint; means for receiving performance information related to a backhaulof the access point; means for predicting, in response to the requestand based at least in part on the performance information, the NPI ofthe at least one of the multiple networks based at least in part on oneor more ongoing data flows existing for the connection between the userterminal and the at least one of the multiple networks over the accesspoint and in response to the at least one data flow added to theconnection between the at least one of the multiple networks and theuser terminal over the access point; and means for sharing the NPI withone or more network nodes in response to addition of the at least onedata flow to the connection, wherein the NPI comprises information forthe user terminal to determine a performance of communicationsassociated with the user terminal and the at least one of multiplenetworks over the one or more ongoing data flows and the at least onedata flow.
 17. The apparatus of claim 16, wherein the NPI comprises atleast one of latency information, bitrate information, current loadinformation, total capacity information, leftover capacity information,or packet loss rate information for a communications resource on atleast one of the multiple networks.
 18. The apparatus of claim 17,wherein the communications resource comprises at least one of a backhaulor radio access network.
 19. The apparatus of claim 16, wherein themeans for predicting is based on information received from a userterminal.
 20. The apparatus of claim 16, wherein the means forpredicting is based at least in part on subscriber information of theuser terminal.
 21. The apparatus of claim 16, wherein the means forsharing the NPI comprises means for broadcasting the NPI to an accesspoint.
 22. The apparatus of claim 21, wherein the access point coversthe user terminal.
 23. The apparatus of claim 21, wherein thebroadcasting occurs in pre-determined time intervals.
 24. The apparatusof claim 16, wherein the means for sharing the NPI comprises means forforwarding the NPI to the user terminal.
 25. The apparatus of claim 16,wherein the means for sharing the NPI comprises sharing the NPI betweenat least two user terminals.
 26. The apparatus of claim 16, wherein themeans for sharing of the NPI comprises: means for receiving a requestfrom the user terminal for the NPI; and means for transmitting the NPIin response from the request.
 27. The apparatus of claim 16, wherein themeans for sharing the NPI comprises: means for creating an informationelement based on the NPI; means for inserting the information elementinto a frame; and means for transmitting the frame.
 28. An apparatus forwireless communications, comprising: means for receiving a request, froma user terminal, to predict network performance based at least in parton adding at least one data flow in a connection between the userterminal and at least one of multiple networks over an access point;means for receiving performance information related to a backhaul of theaccess point; means for predicting, in response to the request and basedat least in part on the performance information, a set of parametersthat govern the network performance between multiple networks based atleast in part on one or more ongoing data flows existing for theconnection between the user terminal and the at least one of themultiple networks over the access point and in response to the at leastone data flow added to the connection between the at least one of themultiple networks and the user terminal over the access point; and meansfor sharing the set of parameters with a network node in response toaddition of the at least one data flow to the connection, wherein theset of parameters comprises information for the network node todetermine a performance of communications associated with the networknode over each network of the multiple networks.
 29. The apparatus ofclaim 28, wherein the network node comprises a user terminal.
 30. Theapparatus of claim 28, wherein the set of parameters comprises one of: anoise figure at a Node B; a target Rise over Thermal at the Node B;average use of OVSF codes on a high speed downlink packet accesschannel; an indicator of whether 64 QAM modulation is supported at theNode B; an indicator of whether MIMO is supported at the Node B; anindicator of whether Multi-Carrier is supported at the Node B; a maximumtransport block size supported by the Node B for uplink and downlink; anaverage time/frequency resource utilization for an extended Node B; or amaximum number of bits configured to transmit/receive in a time transmitinterval for the extended Node B.
 31. A computer-program product forwireless communications, comprising: a non-transitory machine-readablemedium comprising instructions executable to: receive a request, from auser terminal, to predict network performance information (NPI) based atleast in part on adding at least one data flow in a connection betweenthe user terminal and at least one of multiple networks over an accesspoint; receive performance information related to a backhaul of theaccess point; predict, in response to the request and based at least inpart on the performance information, the NPI of the at least one of themultiple networks based at least in part on one or more ongoing dataflows existing for the connection between the user terminal and the atleast one of the multiple networks over the access point and in responseto the at least one data flow added to the connection between the atleast one of the multiple networks and the user terminal over the accesspoint; and share the NPI with one or more network nodes in response toaddition of the at least one data flow to the connection, wherein theNPI comprises information for the user terminal to determine aperformance of communications associated with the user terminal and theat least one of multiple networks over the one or more ongoing dataflows and the at least one data flow.
 32. The computer-program productof claim 31, wherein the NPI comprises at least one of latencyinformation, bitrate information, current load information, totalcapacity information, leftover capacity information, or packet loss rateinformation for a communications resource on at least one of themultiple networks.
 33. The computer-program product of claim 32, whereinthe communications resource comprises at least one of a backhaul orradio access network.
 34. The computer-program product of claim 31,wherein the instructions executable for predicting NPI compriseinstructions executable to predict NPI via a user terminal.
 35. Thecomputer-program product of claim 31, wherein the instructionsexecutable for predicting NPI comprise instructions executable topredict NPI via an access node.
 36. The computer-program product ofclaim 31, wherein the machine-readable medium further comprisesinstructions executable to broadcast the NPI to the access point. 37.The computer-program product of claim 36, wherein the access pointcovers the user terminal.
 38. The computer-program product of claim 36,wherein the broadcasting occurs in pre-determined time intervals. 39.The computer-program product of claim 31, wherein the machine-readablemedium further comprises instructions executable to forward the NPI tothe user terminal.
 40. The computer-program product of claim 31, whereinthe machine-readable medium further comprises instructions executable toshare the NPI between at least two user terminals.
 41. Thecomputer-program product of claim 31, wherein the instructionsexecutable for sharing of the NPI comprise instructions executable to:receive a request from the user terminal for the NPI; and transmit theNPI in response from the request.
 42. The computer-program product ofclaim 31, wherein the instructions executable for sharing the NPIcomprise instructions executable to: create an information element basedon the NPI; insert the information element into a frame; and transmitthe frame.
 43. A computer-program product for wireless communications,comprising: a non-transitory machine-readable medium comprisinginstructions executable to: receive a request, from a user terminal, topredict network performance based at least in part on adding at leastone data flow in a connection between the user terminal and at least oneof multiple networks over an access point; receive performanceinformation related to a backhaul of the access point; predict, inresponse to the request and based at least in part on the performanceinformation, a set of parameters that govern the network performancebetween multiple networks based at least in part on one or more ongoingdata flows existing for the connection between the user terminal and theat least one of the multiple networks over the access point and inresponse to the at least one data flow added to the connection betweenthe at least one of the multiple networks and the user terminal over theaccess point; and share the set of parameters with a network node inresponse to addition of the at least one data flow to the connection,wherein the set of parameters comprises information for the network nodeto determine a performance of communications associated with the networknode over each network of the multiple networks.
 44. Thecomputer-program product of claim 43, wherein the network node comprisesa user terminal.
 45. The computer-program product of claim 43, whereinthe set of parameters comprises one of: a noise figure at a Node B; atarget Rise over Thermal at the Node B; average use of OVSF codes on ahigh speed downlink packet access channel; an indicator of whether 64QAM modulation is supported at the Node B; an indicator of whether MIMOis supported at the Node B; an indicator of whether Multi-Carrier issupported at the Node B; a maximum transport block size supported by theNode B for uplink and downlink; an average time/frequency resourceutilization for an extended Node B; or a maximum number of bitsconfigured to transmit/receive in a time transmit interval for theextended Node B.
 46. An apparatus for wireless communications,comprising: an antenna; and a processor coupled to the antenna, theprocessor being configured to: receive a request, from a user terminal,to predict network performance information (NPI) based at least in parton adding at least one data flow in a connection between the userterminal and at least one of multiple networks over an access point;receive performance information related to a backhaul of the accesspoint; predict, in response to the request and based at least in part onthe performance information, the NPI of the at least one of the multiplenetworks based at least in part on one or more ongoing data flowsexisting for the connection between the user terminal and the at leastone of the multiple networks over the access point and in response tothe at least one data flow added to the connection between the at leastone of the multiple networks and the user terminal over the accesspoint; and share the NPI with one or more network nodes in response toaddition of the at least one data flow to the connection, wherein theNPI comprises information for the user terminal to determine aperformance of communications associated with the user terminal and theat least one of multiple networks over the one or more ongoing dataflows and the at least one data flow.
 47. The apparatus of claim 46,wherein the NPI comprises at least one of latency information, bitrateinformation, current load information, total capacity information,leftover capacity information, or packet loss rate information for acommunications resource on at least one of the multiple networks. 48.The apparatus of claim 47, wherein the communications resource comprisesat least one of a backhaul or radio access network.
 49. The apparatus ofclaim 46, wherein the processor is further configured to predict networkperformance via a user terminal.
 50. The apparatus of claim 46, whereinthe processor is further configured to predict network performance viaan access node.
 51. The apparatus of claim 46, wherein the processor isfurther configured to broadcast the NPI to the access point.
 52. Theapparatus of claim 51, wherein the access point covers the userterminal.
 53. The apparatus of claim 51, wherein the broadcasting occursin pre-determined time intervals.
 54. The apparatus of claim 46, whereinthe machine-readable medium further comprises instructions executable toforward the NPI to the user terminal.
 55. The apparatus of claim 46,wherein the processor is further configured to share the NPI between atleast two user terminals.
 56. The apparatus of claim 46, wherein theprocessor is further configured to: receive a request from the userterminal for the NPI; and transmit the NPI in response from the request.57. The apparatus of claim 46, wherein processor is further configuredto: create an information element based on the NPI; insert theinformation element into a frame; and transmit the frame.
 58. Anapparatus for wireless communications, comprising: an antenna; and aprocessor coupled to the antenna, the processor being configured to:receive a request, from a user terminal, to predict network performancebased at least in part on adding at least one data flow in a connectionbetween the user terminal and at least one of multiple networks over anaccess point; receive performance information related to a backhaul ofthe access point; predict, in response to the request and based at leastin part on the performance information, a set of parameters that governthe network performance between multiple networks based at least in parton one or more ongoing data flows existing for the connection betweenthe user terminal and the at least one of the multiple networks over theaccess point and in response to the at least one data flow added to theconnection between the at least one of the multiple networks and theuser terminal over the access point; and share the set of parameterswith a network node in response to addition of the at least one dataflow to the connection, wherein the set of parameters comprisesinformation for the network node to determine a performance ofcommunications associated with the network node over each network of themultiple networks.
 59. The apparatus of claim 58, wherein the networknode comprises a user terminal.
 60. The apparatus of claim 58, whereinthe set of parameters comprises one of: a noise figure at a Node B; atarget Rise over Thermal at the Node B; average use of OVSF codes on ahigh speed downlink packet access channel; an indicator of whether 64QAM modulation is supported at the Node B; an indicator of whether MIMOis supported at the Node B; an indicator of whether Multi-Carrier issupported at the Node B; a maximum transport block size supported by theNode B for uplink and downlink; an average time/frequency resourceutilization for an extended Node B; or a maximum number of bitsconfigured to transmit/receive in a time transmit interval for theextended Node B.